home *** CD-ROM | disk | FTP | other *** search
/ Whiteline: Alpha / Whiteline Alpha.iso / texte / hyper / 7up_help / hilfe / cutpaste. < prev    next >
Encoding:
Text File  |  1994-09-22  |  10.3 KB  |  210 lines

  1. 5. Suchen und Ersetzen
  2. ----------------------
  3.  
  4. Eine besondere Stärke von 7UP ist das Suchen und Ersetzen von
  5. Textstellen. 7UP verfügt dazu über leistungsfähige Funktionen aus
  6. der §UNIX§COPYRIGH§-Welt, die einer genaueren Beschreibung bedürfen.
  7.  
  8. Öffnen Sie das Menü "Suchen/Ersetzen...".
  9. In den ersten beiden Eingabefeldern wird der String nach dem
  10. gesucht werden soll, sowie der eventuelle Ersatz eingegeben.
  11. Welcher Suchmodus benutzt wird, hängt von der Stellung  der
  12. Schalter (Runde Knöpfe) ab. Diese  Radiobuttons genannten Knöpfe
  13. lassen sich nur wahlweise betätigen. Die anderen "ankreuzbaren"
  14. Kästchen können Sie fast nach Belieben zusätzlich anklicken,
  15. falls sie nicht gesperrt sind. Die Kästchen erscheinen dann
  16. optisch schwächer, "DISABLED".
  17.  
  18. Wenn ein §Block§BLOCK§ markiert ist, so interpretiert 7UP, ob ein zu
  19. suchender Ausdruck markiert ist, oder ob im Block gesucht werden
  20. soll. Ist der Block mehrere Zeilen lang, so wird er als Suchbereich
  21. interpretiert, ist es nur ein Wort oder höchstens eine Zeile, so
  22. muβ es der zu suchende Ausdruck sein. Sie erkennen das daran, daβ
  23. das Kästchen "im Block" evtl. schon markiert ist, wenn Sie das
  24. Menü öffnen.
  25.  
  26. 7UP verfügt über drei Suchmodi:
  27.  
  28. 5.1. Die GREP-Funktion (Get Regular ExPression, Regulärer Ausdruck).
  29.      GREP sucht nach Mustern im Text, deren genaue Zusammensetzung
  30.      nicht bekannt ist. Es sollen Beispielsweise alle Worte im Text
  31.      gefunden werden, die statt des Umlautes 'ü', mit "ue" ge-
  32.      schrieben sind. Allerdings sollen Ausdrücke wie  "Quelle" oder
  33.      "aktuell" dabei unberücksichtigt bleiben, da diese ja keine
  34.      Umlaute enthalten. Man gibt als Suchmuster "[^Q]ue[^l]" ein
  35.      (Die  Hochkommata selbstverständlich nicht, sie dienen nur der
  36.      Kenntlichmachung). "ue" steht dabei für den Umlautersatz, die
  37.      eckigen Klammern beinhalten die Buchstaben, deren Finden ver-
  38.      mieden werden soll. Es heiβt also: suche alle "ue" die vorher
  39.      kein "Q" und nachher kein 'l' haben. '^' ist also ein Aus-
  40.      schlieβlichkeitszeichen. Eine Unterscheidung zwischen Groβ-
  41.      und Kleinschreibung findet nicht statt. Möchte man nun alle
  42.      "ue" finden, die kein Umlautersatz sind, so kann man mit
  43.      "[Q]ue[l]" gezielt nach "Quelle" oder "aktuell" suchen, weil
  44.      hier nun '^' in der Klammer fehlt. Dabei gibt es grundsätzlich
  45.      das Problem, daβ man natürlich genau wissen muβ, welche Worte
  46.      nun auf das Suchmuster zutreffen und welche nicht. Nach diesem
  47.      Muster fällt natürlich ein Wort wie "Suelze" aus dem Netz,
  48.      da hier ja nun ein 'l' hinter "ue" steht. Wir müssen also das
  49.      Suchmuster erweitern. Wir suchen nun alle "ue" ohne 'Q' davor
  50.      und ohne 'l' danach, aber hinter 'l' darf ein 'z' stehen.
  51.      Geben Sie also "ue[l][^l]" ein und hoffen, daβ "Suelze" nun
  52.      gefunden wird.
  53.  
  54. Ein zweites Beispiel:
  55.      Sie möchten in Ihrem Text alle '/' finden, denen eine Ziffer
  56.      voransteht, und denen ein Buchstabe folgt. also z.B. "22/BR"
  57.      nicht aber "138/0.5". Das Suchmuster lautet dann "[0-9]/[a-z]".
  58.      Vor dem '/' sind nur Ziffern, hinter dem '/' nur Buchstaben
  59.      erlaubt. Als zweite Lösung bietet sich ":d/:a" an. Erklärung
  60.      s.u.
  61.  
  62. Ein drittes Beispiel:
  63.      Es sollen alle Worte gefunden werden, die mit einer Ziffer
  64.      beginnen. Also z.B. "7UP". Da davor ein Leerzeichen erwartet
  65.      wird, lautet das Suchmuster dann ": [0-9]".
  66.  
  67. Viertes Beispiel:
  68.      Es sollen alle Interpunktionen am Zeilenende gefunden werden.
  69.      z.B. Satzendekennung '.'. Geben Sie "\.$" ein. Bedenken Sie,
  70.      daβ der '.' ein Sonderzeichen ist und quotiert werden muβ.
  71.      Das '$'-Zeichen steht für das Zeilenende, und muβ natürlich
  72.      auch am Ende des regulären Ausdrucks stehen. Wenn Sie alle
  73.      Interpunktionen am Zeilenende finden wollen, geben Sie
  74.      "[,;.:!?]$" ein. (Dies ist tatsächlich kein COMIC-Schimpfwort!)
  75.  
  76.  
  77. ANMERKUNG:
  78.      Die Hochkommata vor und hinter den Beispielen werden selbst-
  79.      verständlich nicht eingegeben, sie dienen nur der Kenntlich-
  80.      machung innerhalb dieser Dokumentation.
  81.      Der Reguläre Ausdruck beschreibt das zu suchende Muster. Es
  82.      findet keine Unterscheidung zwischen Groβ- und Kleinschreibung
  83.      statt. Die Suchmöglichkeiten entsprechen aus technischen
  84.      Gründen nicht dem vollen Leistungsumfang des §UNIX§COPYRIGH§-Programms
  85.      GREP.
  86.  
  87. Hier eine Aufstellung derjenigen Sonderzeichen, mit denen eine
  88. recht präzise Formulierung der Suchkriterien möglich ist:
  89.  
  90. '.'    Der Punkt steht für ein beliebiges Zeichen.
  91.  
  92. '^'    Das Caret steht für den Zeilenanfang (implementiert, aber
  93.        nicht funktionsfähig; muβ aber gequotet werden. s.u.).
  94.  
  95. '$'    Das Dollarzeichen steht für das Zeilenende.
  96.  
  97. '\'    Der  Backslash  quotiert  jedes  Zeichen. Um das '.'-Zeichen
  98.        selbst darstellen zu können, schreiben Sie "\."; ebenso "\\",
  99.        "\^", "\$". Sonderzeichen müssen grundsätzlich quotiert
  100.        werden.
  101.  
  102.        Der Doppelpunkt beschreibt die Klasse des zu suchenden
  103.        Zeichens.
  104. ':a'   steht für ein alphabetisches Zeichen,
  105. ':d'   für eine Ziffer,
  106. ':n'   für ein alphanumerisches Zeichen,
  107. ':.'   für Interpunktionen,
  108. ': '   für das Leerzeichen.
  109.  
  110. '*'    Wenn einem Zeichen ein '*' folgt, bedeutet das, daβ das
  111.        letzte Zeichen garnicht auftritt, oder sich beliebig oft
  112.        wiederholen darf."fo*"  findet "f", "fo", "foo", "fooo" usw.
  113.  
  114. '+'    Wie '*', jedoch muβ das letzte Zeichen mindestens einmal
  115.        auftreten."fo*" findet "fo", "foo", "fooo" usw.
  116.  
  117. '[]'   Zeichensatz.
  118.        Eine Zeichenkette in eckigen Klammern steht für genau diese
  119.        Zeichen, aber keine anderen. Wenn das erste Zeichen ein '^'
  120.        ist, sind diese Zeichen von der Suche ausgeschlossen.
  121.        Z.B.: "[xyz]" steht für "xx" und "zyx", während "[^xyz]"
  122.        zwar "abc" nicht aber "axb" findet. Ein Zeichenbereich kann
  123.        durch '-' angegeben werden. Beachten Sie bitte, daβ [a-z]
  124.        jedes alphabetische Zeichen, aber [z-a] überhaupt kein
  125.        alphabetisches Zeichen findet. Ziffern werden mit [0-9]
  126.        angegeben. Dabei sind auch Einschränkungen möglich, z.B.
  127.        [7-9]  (also nur 7,8,9). Das gleiche gilt auch für Buch-
  128.        staben, z.B. [m-z], oder [^a-bd-z?] sucht nur Buchstabe
  129.        'c', alle Ziffern, sowie Sonderzeichen auβer '?'. Die
  130.        Reihenfolge der Zeichen in der Klammer spielt keine Rolle.
  131.  
  132. In der Hilfebox können Sie diese Sonderzeichen und ihre Bedeutung
  133. noch einmal nachlesen, falls Sie sie gerade mal nicht genau wissen
  134. sollten.
  135.  
  136. ANMERKUNG:
  137. Die Sonderzeichen werden innerhalb eines Zeichensatzes nicht
  138. gesondert interpretiert; das Caret '^' wird nur dann als Negation
  139. gewertet, wenn es direkt am Anfang des Zeichensatzes steht (also
  140. direkt hinter dem '['). Das '$' ist wird nur an letzter Stelle
  141. stehend richtig bewertet. '^' für den Zeilenanfang ist zwar
  142. implementiert, aber nicht funktionsfähig, weil nach einer Fund-
  143. stelle innerhalb einer Zeile noch weiter gesucht wird, und daher
  144. der GREP-Funktion ein neuer Zeilenanfang vorgegaukelt wird. Die
  145. Verknüpfung von Regulären Ausdrücken ist wieder ein Regulärer
  146. Ausdruck.
  147.  
  148. ANMERKUNG: Die Suche mit regulären Ausdrücken ist nicht trivial und
  149. erfordert ein gewisses Maβ an Übung. Es kann auch sein, daβ
  150. bestimmte Ausdrücke nicht gefunden werden, weil man dafür das
  151. Suchmuster nicht formulieren kann. GREP ist also auch nicht
  152. "allfindend".
  153.  
  154.  
  155. 5.2. Die Matchfunktion.
  156.  
  157. Diese Funktion wird vor allen Dingen MSDOS Anwendern bekannt vor-
  158. kommen, denn es wird hier mit Wildcards, vorzugsweise '*' und '?',
  159. gesucht. Nehmen wir an, Sie haben eine Stückliste mit Artikelnummern
  160. vor sich, und möchten nun alle Nummern heraussuchen, die für eine
  161. bestimmte Bauteilegruppe typisch sind z.B.: 99XXX450, wobei XXX für
  162. drei beliebige Ziffern steht. Man gibt daher als Suchmuster
  163. "99???450" ein. Hier gibt es nun eine Besonderheit. Dieses Such-
  164. muster setzt nämlich voraus, das nichts weiter als "99???450" in
  165. der Zeile steht. Da wir aber noch mehr Zeichen in der Zeile
  166. erwarten, müssen wir noch weitere beliebige Zeichen vor und hinter
  167. der Artikelnummer einkalkulieren. Wir erweitern also das Suchmuster
  168. auf das Format "*99???450*". Die Sterne vor und hinter der Art.Nr.
  169. stehen für beliebige und beliebig viele Zeichen. Die Wildcards sind
  170. also '?' für ein beliebiges Zeichen und '*' für beliebig viele
  171. Zeichen. Wenn sie nun ausgerechnet nach '*' oder '?' suchen wollen,
  172. müssen Sie die Wildcards ändern. Das können Sie in den Ein-
  173. gabefeldern All- und Existenzquantoren. Dabei gilt, daβ die
  174. Quantoren selbst in den zu suchenden Textstellen nicht vorkommen
  175. dürfen. Sie können auch noch Textstellen an Anfang der Zeile, sowie
  176. am deren Ende suchen, wenn Sie die Quantoren entspechend ein-
  177. schränken. Wollen Sie die Art.Nr. am Anfang der Zeile suchen, so
  178. geben Sie "99???450*" ein. An Ende der Zeile wäre das entsprechend
  179. "*99???450". Auch hier sollte ein wenig geübt werden. Die Hoch-
  180. kommata vor und hinter den Beispielen werden selbstverständlich
  181. nicht eingegeben, sie dienen nur der Kenntlichmachung innerhalb
  182. dieser Dokumentation.
  183.  
  184. ANMERKUNG zu GREP und MATCH:
  185. Grundsätzlich gilt bei diesen Funktionen, daβ ein Ersetzen durch
  186. andere Buchstabenkombinationen nicht möglich ist, weil die genaue
  187. Länge der Suchmuster nicht exakt bestimmbar ist, und es deshalb zu
  188. ziemlich chaotischen Ersetzungen führen kann, die den Text total
  189. entstellen. Die Wildcardfunktionen sind also nur zum Suchen gedacht.
  190.  
  191.  
  192. 5.3. Suchen.
  193. Hier muβ das Suchmuster wie gewohnt exakt passen. Nur bei dieser
  194. Funktion ist auch eine Ersetzung möglich. Sie haben die Möglichkeit
  195. ab der aktuellen Cursorposition, ab Textanfang oder im markiertem
  196. Block zu suchen bzw. zu ersetzen. Die Einstellungen werden mit den
  197. ankreuzbaren Kästchen vorgenommen. Wenn eine bestimmte Kombination
  198. nicht möglich ist, werden die entsprechenden Kästchen "DISABLED",
  199. man kann Sie also nicht betätigen.
  200.  
  201. 5.4. Ersetzen
  202. Hiermit wird die gefundene Textstelle gegen den Ersatz ausgetauscht.
  203. Wenn Sie  einmal mehrere Worte auf diese Weise löschen wollen, so
  204. geben Sie als Ersatz einfach nichts ein, also einen Leerstring.
  205. Wenn Sie alles aufeinmal austauschen wollen, so wählen Sie den
  206. Knopf "alles". Bei der Einstellung "nachfragen" wird vor jeder
  207. Ersetzung nochmal nachgefragt, ob Sie damit einverstanden  sind.
  208. Auβerdem wird in einer Dialogbox der Ersatzstring angezeigt und
  209. kann noch individuell geändert werden. Sie können damit die Fund-
  210. stelle durch verschiedene Texte ersetzen.